void getGdataEntries(int * entries);
void getGdataTrueEntries(int * entries);
void getGdata(int pos,GroupData ** gdataptr);
void getGdataDisplayed(GroupData ** gdataptr);
void getGdataActive(GroupData ** gdataptr);
void setGdataActive(int pos);
void resetGdataActive();
void getGdataActivePos(int *pos);
void redrawGdataAll();
void redrawGdataActive();
void redrawGdata(GroupData *gdata);
void redrawGdataPos(int pos);
void removeGdata(int pos);
void removeGdataActive();
void clearGdata();
void setGdataQuiet(BOOL q);
void insertGdata(GroupData * gdata,BOOL sorted);

void getMdata(int pos,MessageListData ** mdataptr);
typedef void (mdataIteratorFunc) (MessageListData *mdata,int index,void *data);
void forAllMdata(mdataIteratorFunc *iterator,void *data);

int getMdataVisibleEntries();
void getMdataVisible(int pos,MessageListData ** mdataptr);
void getMdataActive(MessageListData ** mdataptr);
void setMdataActive(int pos);
void setMdataActive(int pos,BOOL visible);
void getMdataActivePos(int *pos);
void getMdataActivePos(int *pos,BOOL visible);
struct MUI_NListtree_TreeNode *findMdataTreeNode(char *messageID);
void redrawMdataAll();
void redrawMdataActive();
void redrawMdata(int pos);
BOOL isMdataSelected(int pos,BOOL visible);
BOOL isMdataSelected(int pos);
void setMdataSelected(int pos,BOOL select,BOOL visible);
void openMdata(int pos);
int getMdataPos(int mID);
void setMdataQuiet(BOOL q);

int get_gdataPos(int gID);
int get_gdataPos(char * name);
BOOL set_gdata(GroupData * gdata);
void get_gdata(GroupData ** gdataptr,int gID);
void get_gdata(GroupData ** gdataptr,const char * name);
BOOL set_gdata(int gID);
BOOL set_gdata(GroupData * gdata);
BOOL set_gdata(char * name);
BOOL set_mdata(int mID);
BOOL set_mdata(int mID,BOOL hidden);
BOOL set_mdata(MessageListData * mdata);
BOOL set_mdata(MessageListData * mdata,BOOL hidden);
int get_mdata(MessageListData ** mdataptr,int mID);
BOOL get_mdata(MessageListData ** mdataptr,GroupData * gdata,int mID,BOOL need_flags);
int get_mdataptr_pos(MessageListData *mdata);
int get_mdata_pos(int mID);
void get_mdata_pos(int * pos,char * messageID);
